//
// Created by xm on 2024/5/6.
//

#ifndef CPP_CORE_PERSON_H
#define CPP_CORE_PERSON_H

namespace Test04 {
    class Person{
    public:
        Person();
        Person(const char* _name, int _age, float _height);
        Person(const char *_name, int _age);
        Person(const char *_name);
        Person(const Person& person);
        ~Person();
    private:

        int age;
        float height;
        char* name;

    public:
        void setName(const char* _name);

        std::string description() const;

        Person &getPerson();
        void toPrint();

    };

    class PersonSmartPoint
    {
    public:
        PersonSmartPoint(Person* p);
        ~PersonSmartPoint();


    private:
        Person *pPerson;
    };

} // test04

#endif //CPP_CORE_PERSON_H
